@微光
3年前 提问
1个回答

数据库的备份种类有哪些

007bug
3年前
官方采纳

数据库的备份大致有3种类型:冷备份、热备份和逻辑备份。

(1)冷备份

冷备份是在没有最终用户访问它的情况下关闭数据库,并将其备份。这是保持数据完整性的最好办法,但如果数据库太大,无法在备份窗口中完成对它的备份,该方法就不适用了。

(2)热备份

热备份是在数据库正在被写入的数据更新时进行。热备份严重依赖日志文件。在进行时,日志文件将业务指令“堆起来”,而不真正将任何数据值写入数据库记录。当这些业务被堆起来时,数据库表并没有被更新,因此,数据库被完整地备份。

该方法有些明显的缺点。首先,如果系统在进行备份时崩溃,则堆在日志文件中的所有业务都会丢失,因此也会造成数据的丢失;其次,它要求DBA仔细地监视系统资源,这样日志文件未占满所有的存储空间就不得不停止接受业务;最后,日志文件本身在某种程度上也需要被备份以便重建数据。需要考虑另外的文件并使其与数据库文件协调起来,为备份增加了复杂度。

由于数据库大小和系统可用性的需求,没有对其进行备份的其他办法。在有些情况下,如果日志文件能决定在上次备份操作后,哪些业务更改了哪些记录的话,对数据库进行增量备份是可行的。

(3)逻辑备份

逻辑备份使用软件技术从数据库提取数据并将结果写入一个输出文件。该输出文件不是一个数据库表,而是表中的所有数据是一个映像。不能对此输出文件进行任何真正的数据库操作。在大多数客户机/服务器数据库中,结构化查询语言就是用来创建输出文件的。该过程有些慢,对大型数据库的全盘备份不实用。尽管如此,当仅想备份那些上次备份之后改变了的数据,即增量备份时,该方法非常好。为了从输出文件恢复数据,必须生成逆SQL语句。该过程也相当耗时,但工作的效果相当好。